package work.comeback.omo.dao.movie;

import work.comeback.omo.model.movie.info.MovieVoidData;

import java.util.List;
import java.util.Map;


public interface IMovieInfo {
    // 保存单条电影基本信息
    boolean save(MovieVoidData data);

    // 保存多条电影基本信息
    boolean saveAll(List<MovieVoidData> dataList);

    // 根据 vod_id 查询电影基本信息
    MovieVoidData getMovieInfoById(int vodId);

    // 根据 movie_name 查询电影基本信息
    List<MovieVoidData> getMoviesByName(String movieName);

    // 删除电影基本信息
    boolean deleteById(int vodId);

    // 更新电影基本信息
    boolean update(MovieVoidData data);

    // 查询指定条数的电影基本信息，并根据 type_name 分组返回
    Map<String, List<MovieVoidData>> getGroupedDataByTypeName(int limit);

    // 查询所有 type_name
    List<String> getAllTypeNames();

    // 根据 type_name 查询指定条数的电影基本信息
    List<MovieVoidData> getMoviesByTypeName(String typeName, int limit);
}
